"""
数据库模型初始化文件
根据功能模块配置动态导入模型
"""

from app.core.config import settings

# 基础模型始终导入
from app.models.base.base import BaseModel

# 根据配置动态导入模型
__all__ = ["BaseModel"]
TORTOISE_ORM_MODELS = []

# 用户系统模型（条件导入）
if settings.enable_user_system:
    from app.models.base.user import User, UserProfile, UserLoginLog
    __all__.extend(["User", "UserProfile", "UserLoginLog"])
    TORTOISE_ORM_MODELS.append("app.models.base.user")

# 系统配置模型（数据库启用时导入）
if settings.enable_database:
    from app.models.base.system import SystemConfig, DatabaseInitLog
    __all__.extend(["SystemConfig", "DatabaseInitLog"])
    TORTOISE_ORM_MODELS.append("app.models.base.system")
    
    # 操作日志模型（条件导入）
    if settings.enable_operation_logging:
        from app.models.base.system import OperationLog
        if "OperationLog" not in __all__:
            __all__.append("OperationLog")